package com.qiche.service;

import com.qiche.aspect.Result;
import com.qiche.dto.SubscribeProductDto;
import com.qiche.model.Product;
import com.qiche.model.SubscribeProduct;

import java.util.List;

/**
 * @author chendezhi
 * @date 2018/3/5 10:16
 */
public interface SubscribeProductService extends IService<SubscribeProduct> {

    /**
     * 根据subId 获取对应得 服务
     * @param subId
     * @return
     */
    public List<Product> selectProductBySubscribeId(Long subId);

    /**
     * 批量存入
     * @param subscribeProducts
     * @return
     */
    int insertBatch(List<SubscribeProduct> subscribeProducts);

    /**
     * 根据 展示服务列表
     * @param subId
     * @return
     */
    public List<SubscribeProductDto> getProductsBySubscribe(Long subId);

    /**
     * 删除 预约对应服务
     *  需要判断 预约是否在开单 状态中
     * @param subscribeProduct 预约对应服务
     * @return
     */
    public Result delProduct(SubscribeProduct subscribeProduct);

    /**
     * 添加 预约服务
     *  需要判断 预约是否在开单 状态中
     * @param subscribeProduct
     * @return
     */
    public Result addProduct(SubscribeProduct subscribeProduct);

	int deleteBySubscribeId(Long subId);

    List<SubscribeProduct> selectBySubscribeId(Long subId);
}
